#ifndef __compfwk_H__
#define __compfwk_H__

#include <string>
#include <vector>
#include <map>
#include <cstddef>

namespace compfwk
{
    //! Define a type for strings, this allows to change
    //! the implementation when needed
    typedef std::string CString;
    
    template< typename T >
    struct CVector
    {
        //! Define a type for a vector container
        typedef std::vector< T > Ty;
    };

    template< typename T1, typename T2 >
    struct CHashMap
    {
        //! Define a type for a hashmap
        typedef std::map< T1, T2 > Ty;
    };
}
#endif